Generally, robot software components are a software module that can be reused and replaced and configure robot applications only by composing components without knowing detailed implementations of a corresponding interface, by using only an interface provided by components in the viewpoint of an external component user.
Robot components used in a robot software structure each have an internal state and are operated as an active type and perform a robot control while performing data exchange and a method call between components through a component interface. Recently, so as to support features of a robot, open platform for robotic services (OPRoS), robot technology component (RTC), open robot control software (Orocos), an robot operation system (ROS), and the like, have proposed a robot programming type using an active pattern type of components.
Individual components made in accordance with the foregoing component-based-development methodology serve as an agent for real-world devices and various algorithms. Robot developers compose previously and independently tested components to complete robot services.
Meanwhile, the components may be combined by component composing tools. The component composing tools is a graphical user interface (GUI) based modeling tool that can allow robot service developers to connect the individual components with each other on an application diagram to complete services. When components are composed using the GUI-based component composing tool, a system can complete by easily composing components while visually confirming how to connect an interface port of components with other components.
As various devices configuring the robot so as for the robot to provide various services are increased and several algorithms are added, the number of components representing various devices and algorithms is increased and the connection relationship between components for combining them is increased in proportion thereto.
Therefore, when intending to represent the connection relationship of too many components in an application diagram using a GUI-based component composing apparatus, the connection lines represented on the application diagram is very complicated due to problems of connection lines intersecting each other, connection between the components far away from each other, connection with component interface ports facing each other, and the like, which results in hindering the understanding of a configuration of the system. Therefore, it is difficult to complete the system through the components composing.